public abstract class Mifare
extends java.lang.Object
限定符和类型 | 类和说明 |
---|---|
static class |
Mifare.CardType |
static class |
Mifare.Device |
static class |
Mifare.KeyType |
限定符和类型 | 字段和说明 |
---|---|
static int |
ACCESS_SIZE |
static int |
KEY_BLOCK |
static int |
KEY_SIZE |
static int |
READABLE_BLOCKS_PER_SECTOR |
static int |
S50_BLOCK_SIZE |
static int |
S50_ID_SIZE |
static int |
S50_SECTOR_COUNT |
static int |
S70_BLOCK_SIZE |
static int |
S70_ID_SIZE |
static int |
S70_SECTOR_COUNT |
static int |
VALUE_SIZE |
构造器和说明 |
---|
Mifare() |
限定符和类型 | 方法和说明 |
---|---|
abstract void |
close()
关闭接口。
|
abstract void |
decrement(int sectorNo,
int blockNo,
int value)
减值。
|
abstract void |
detectCard()
检测是否有卡在感应范围。
|
abstract void |
encrypt(int sectorNo,
byte[] keyA,
byte[] keyB,
byte[] accessControl)
加密。
|
abstract byte[] |
getCardID()
获取在感应范围的M1卡的ID号。
|
abstract byte[] |
getPkgRead() |
abstract byte[] |
getPkgWrite() |
abstract int |
getValue(int sectorNo,
int blockNo)
获取值。
|
abstract void |
halt()
挂起卡片。
|
abstract void |
increment(int sectorNo,
int blockNo,
int value)
增值。
|
abstract void |
initValue(int sectorNo,
int blockNo,
int value)
初始化值。
|
abstract void |
loadSecKey(Mifare.KeyType keyType,
int sectorNo,
byte[] key)
校验M1卡扇区密码
|
static Mifare |
newInstance(Mifare.Device device)
创建Mifare实例
|
abstract void |
open()
打开M1读写器
|
abstract byte[] |
readBlock(int sectorNo,
int blockNo)
从M1卡中读取一个数据块。
|
abstract void |
reset()
卡片复位。
|
abstract void |
setCardType(Mifare.CardType cardtype)
设置卡片类型。
|
abstract void |
writeBlock(int sectorNo,
int blockNo,
byte[] blockData)
向M1卡写入一个数据块
|
public static final int S50_ID_SIZE
public static final int S70_ID_SIZE
public static final int S50_SECTOR_COUNT
public static final int S70_SECTOR_COUNT
public static final int S50_BLOCK_SIZE
public static final int S70_BLOCK_SIZE
public static final int READABLE_BLOCKS_PER_SECTOR
public static final int VALUE_SIZE
public static final int KEY_SIZE
public static final int ACCESS_SIZE
public static final int KEY_BLOCK
public static Mifare newInstance(Mifare.Device device) throws java.lang.Throwable
device
- 固定值为 Mifare.Device.RF400Ujava.lang.Throwable
public abstract byte[] getPkgWrite()
public abstract byte[] getPkgRead()
public abstract void open() throws java.lang.Throwable
java.lang.Throwable
public abstract void close()
public abstract void reset() throws java.lang.Throwable
java.lang.Throwable
public abstract void setCardType(Mifare.CardType cardtype)
cardtype
- public abstract void detectCard() throws java.lang.Throwable
java.lang.Throwable
public abstract byte[] getCardID() throws java.lang.Throwable
java.lang.Throwable
public abstract void halt() throws java.lang.Throwable
java.lang.Throwable
public abstract void loadSecKey(Mifare.KeyType keyType, int sectorNo, byte[] key) throws java.lang.Throwable
keyType
- 密码类型(KeyA/KeyB)sectorNo
- 扇区号key
- 密码值java.lang.Throwable
public abstract byte[] readBlock(int sectorNo, int blockNo) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号java.lang.Throwable
public abstract void writeBlock(int sectorNo, int blockNo, byte[] blockData) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号blockData
- 数据块(16 Bytes)java.lang.Throwable
public abstract void initValue(int sectorNo, int blockNo, int value) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号value
- 要写入的值java.lang.Throwable
public abstract int getValue(int sectorNo, int blockNo) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号java.lang.Throwable
- 如果非M1卡的标准存储格式,将会抛出异常public abstract void increment(int sectorNo, int blockNo, int value) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号value
- 值java.lang.Throwable
public abstract void decrement(int sectorNo, int blockNo, int value) throws java.lang.Throwable
sectorNo
- 扇区号blockNo
- 块号value
- 值java.lang.Throwable
public abstract void encrypt(int sectorNo, byte[] keyA, byte[] keyB, byte[] accessControl) throws java.lang.Throwable
sectorNo
- 扇区号keyA
- 密码KeyAkeyB
- 密码KeyBaccessControl
- 控制字java.lang.Throwable